package generator.domain;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;
import javax.validation.constraints.NotNull;

import java.io.Serializable;

import java.util.Date;
import io.swagger.annotations.ApiModelProperty;
import org.hibernate.validator.constraints.Length;

/**
* 借阅表
* @TableName bs_borrow
*/
public class BsBorrow implements Serializable {

    /**
    * 主键ID
    */
    @NotNull(message="[主键ID]不能为空")
    @ApiModelProperty("主键ID")
    private Integer id;
    /**
    * 借阅者ID
    */
    @ApiModelProperty("借阅者ID")
    private Long userId;
    /**
    * 书本编号
    */
    @Size(max= 50,message="编码长度不能超过50")
    @ApiModelProperty("书本编号")
    @Length(max= 50,message="编码长度不能超过50")
    private String bookNum;
    /**
    * 借阅日期
    */
    @ApiModelProperty("借阅日期")
    private Date borrowDate;
    /**
    * 归还日期
    */
    @ApiModelProperty("归还日期")
    private Date returnDate;
    /**
    * 截至日期
    */
    @ApiModelProperty("截至日期")
    private Date closeDate;
    /**
    * 状态（0归还 | 未归还）
    */
    @ApiModelProperty("状态（0归还 | 未归还）")
    private String state;
    /**
    * 创建时间
    */
    @ApiModelProperty("创建时间")
    private Date createTime;
    /**
    * 更新时间
    */
    @ApiModelProperty("更新时间")
    private Date updateTime;

    /**
    * 主键ID
    */
    private void setId(Integer id){
    this.id = id;
    }

    /**
    * 借阅者ID
    */
    private void setUserId(Long userId){
    this.userId = userId;
    }

    /**
    * 书本编号
    */
    private void setBookNum(String bookNum){
    this.bookNum = bookNum;
    }

    /**
    * 借阅日期
    */
    private void setBorrowDate(Date borrowDate){
    this.borrowDate = borrowDate;
    }

    /**
    * 归还日期
    */
    private void setReturnDate(Date returnDate){
    this.returnDate = returnDate;
    }

    /**
    * 截至日期
    */
    private void setCloseDate(Date closeDate){
    this.closeDate = closeDate;
    }

    /**
    * 状态（0归还 | 未归还）
    */
    private void setState(String state){
    this.state = state;
    }

    /**
    * 创建时间
    */
    private void setCreateTime(Date createTime){
    this.createTime = createTime;
    }

    /**
    * 更新时间
    */
    private void setUpdateTime(Date updateTime){
    this.updateTime = updateTime;
    }


    /**
    * 主键ID
    */
    private Integer getId(){
    return this.id;
    }

    /**
    * 借阅者ID
    */
    private Long getUserId(){
    return this.userId;
    }

    /**
    * 书本编号
    */
    private String getBookNum(){
    return this.bookNum;
    }

    /**
    * 借阅日期
    */
    private Date getBorrowDate(){
    return this.borrowDate;
    }

    /**
    * 归还日期
    */
    private Date getReturnDate(){
    return this.returnDate;
    }

    /**
    * 截至日期
    */
    private Date getCloseDate(){
    return this.closeDate;
    }

    /**
    * 状态（0归还 | 未归还）
    */
    private String getState(){
    return this.state;
    }

    /**
    * 创建时间
    */
    private Date getCreateTime(){
    return this.createTime;
    }

    /**
    * 更新时间
    */
    private Date getUpdateTime(){
    return this.updateTime;
    }

}
